Processing of video data, including for example data output by a video camera, may include format conversions of various types, and noise detection and/or suppression.
Image format conversion is a commonly used function in various video cameras and video displays, and for broadcast infrastructure systems, such as servers, switchers, head-end encoders, and specialty studio displays. Image format conversion applications, for example, may include up-, down-, and cross-conversion of standard-definition and high-definition video streams in interlaced or progressive format. A format conversion application may convert image formats for one or more channels of video received over a serial digital interface (SDI) or a digital visual interface (DVI). The received video may be standard definition (SD), high definition (HD), or 3G-SDI (full HD). The converted image may be mixed and displayed over user-selectable output such as SDI, DVI, or high-definition multimedia interface (HDMI). An image format conversion application may be incorporated in an intellectual property (IP) module or IP block of a programmable logic device (PLD) or field programmable gate array (FPGA), for example.
Video data output by video cameras typically contains some amount of zero-mean Gaussian noise, which may the referred to as “white noise”. The white noise characteristically entails small random differences from frame to frame in pixel values that are not due to motion of an image element depicted by the pixel. To improve image quality, it is desirable to suppress the noise without distorting differences in frame to frame pixel values that result from motion of the image element. Frame to frame differences in pixel values typically vary in a non-deterministic manner, both temporally and spatially, as a result of, at least, image element motions and noise. Consequently, distinguishing between differences resulting from noise and differences resulting from motion of an image element can be challenging.
Accordingly, various embodiments described hereinbelow seek to improve upon techniques for distinguishing between frame to frame differences in pixel values that relate to image motion from those differences that relate to noise.